package com.xueyi.system.area.domain.po;

import java.math.BigDecimal;

import com.alibaba.fastjson.JSONArray;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.handlers.FastjsonTypeHandler;
import com.xueyi.common.core.web.tenant.base.TBaseEntity;
import com.xueyi.system.area.domain.dto.BaseAreaDto;
import com.baomidou.mybatisplus.annotation.TableField;
import com.xueyi.common.core.annotation.Excel;

/**
 * 基地管理 持久化对象
 *
 * @author yanhe
 */
@TableName(value = "base_area", excludeProperty = {"sort"},autoResultMap = true)
public class BaseAreaPo extends TBaseEntity {

    private static final long serialVersionUID = 1L;

    /**
     * 基地图片
     */
    @Excel(name = "基地图片")
    @TableField("img")
    private String img;

    /**
     * 基地编号
     */
    @Excel(name = "基地编号")
    @TableField("code")
    private String code;

    /**
     * 基地类型
     */
    @Excel(name = "基地类型")
    @TableField("type")
    private String type;

    /**
     * 基地属性
     */
    @Excel(name = "基地属性")
    @TableField("property")
    private String property;

    /**
     * 所属单位
     */
    @Excel(name = "所属单位")
    @TableField("pertain")
    private String pertain;


    /** 省市区 */
    @Excel(name = "省市区")
    @TableField(value = "area_ids", typeHandler = FastjsonTypeHandler.class)
    private JSONArray areaIds;

    /**
     * 地址
     */

    @Excel(name = "地址")
    private String adderss;

    /**
     * 经度
     */
    @Excel(name = "经度")
    @TableField("longitude")
    private String longitude;

    /**
     * 纬度
     */
    @Excel(name = "纬度")
    @TableField("latitude")
    private String latitude;

    /**
     * 海拔
     */
    @Excel(name = "海拔")
    @TableField("elevation")
    private BigDecimal elevation;

    /**
     * 面积
     */
    @Excel(name = "面积")
    @TableField("area")
    private BigDecimal area;

    /**
     * 基地负责人
     */
    @Excel(name = "基地负责人")
    @TableField("base_user")
    private Long baseUser;

    /**
     * 基地负责人
     */
    @Excel(name = "基地负责人")
    @TableField("base_user_name")
    private String baseUserName;

    /**
     * 联系电话
     */
    @Excel(name = "联系电话")
    @TableField("phone")
    private String phone;

    /**
     * 附件
     */
    @TableField(value = "affix", typeHandler = FastjsonTypeHandler.class)
    private JSONArray affix;

    /**
     * 水质报告
     */
    @TableField(value = "water_report", typeHandler = FastjsonTypeHandler.class)
    private JSONArray waterReport;

    /**
     * 环境报告
     */
    @TableField(value = "soil_report", typeHandler = FastjsonTypeHandler.class)
    private JSONArray soilReport;

    /**
     * 省
     */
    @Excel(name = "省")
    @TableField("province_code")
    private String provinceCode;


    /**
     * 市
     */
    @Excel(name = "市")
    @TableField("city_code")
    private String cityCode;


    /**
     * 县
     */
    @Excel(name = "县")
    @TableField("district_code")
    private String districtCode;

    /**
     * 描述
     */
    @Excel(name = "描述")
    @TableField("content")
    private String content;

    /**
     * 状态
     */
    @Excel(name = "状态")
    @TableField("status")
    private String status;

    public JSONArray getSoilReport() {
        return soilReport;
    }

    public void setSoilReport(JSONArray soilReport) {
        this.soilReport = soilReport;
    }

    public JSONArray getWaterReport() {
        return waterReport;
    }

    public void setWaterReport(JSONArray waterReport) {
        this.waterReport = waterReport;
    }

    public String getType() {
        return type;
    }

    public void setType(String type) {
        this.type = type;
    }

    public String getProvinceCode() {
        return provinceCode;
    }

    public void setProvinceCode(String provinceCode) {
        this.provinceCode = provinceCode;
    }

    public String getCityCode() {
        return cityCode;
    }

    public void setCityCode(String cityCode) {
        this.cityCode = cityCode;
    }

    public String getDistrictCode() {
        return districtCode;
    }

    public void setDistrictCode(String districtCode) {
        this.districtCode = districtCode;
    }

    public JSONArray getAreaIds() {
        return areaIds;
    }

    public void setAreaIds(JSONArray areaIds) {
        this.areaIds = areaIds;
    }

    public void setImg(String img) {
        this.img = img;
    }

    public String getImg() {
        return img;
    }

    public void setCode(String code) {
        this.code = code;
    }

    public String getCode() {
        return code;
    }

    public void setProperty(String property) {
        this.property = property;
    }

    public String getProperty() {
        return property;
    }

    public void setPertain(String pertain) {
        this.pertain = pertain;
    }

    public String getPertain() {
        return pertain;
    }

    public void setAdderss(String adderss) {
        this.adderss = adderss;
    }

    public String getAdderss() {
        return adderss;
    }

    public void setLongitude(String longitude) {
        this.longitude = longitude;
    }

    public String getLongitude() {
        return longitude;
    }

    public void setLatitude(String latitude) {
        this.latitude = latitude;
    }

    public String getLatitude() {
        return latitude;
    }

    public void setElevation(BigDecimal elevation) {
        this.elevation = elevation;
    }

    public BigDecimal getElevation() {
        return elevation;
    }

    public void setArea(BigDecimal area) {
        this.area = area;
    }

    public BigDecimal getArea() {
        return area;
    }

    public void setBaseUser(Long baseUser) {
        this.baseUser = baseUser;
    }

    public Long getBaseUser() {
        return baseUser;
    }

    public void setBaseUserName(String baseUserName) {
        this.baseUserName = baseUserName;
    }

    public String getBaseUserName() {
        return baseUserName;
    }

    public void setPhone(String phone) {
        this.phone = phone;
    }

    public String getPhone() {
        return phone;
    }

    public void setAffix(JSONArray affix) {
        this.affix = affix;
    }

    public JSONArray getAffix() {
        return affix;
    }

    public void setContent(String content) {
        this.content = content;
    }

    public String getContent() {
        return content;
    }

    @Override
    public void setStatus(String status) {
        this.status = status;
    }

    @Override
    public String getStatus() {
        return status;
    }

}
